package org.jeecgframework.web.system.pojo.base;

import java.math.BigDecimal;
import java.util.Date;
import java.lang.String;
import java.lang.Double;
import java.lang.Integer;
import java.math.BigDecimal;
import javax.persistence.*;
import javax.xml.soap.Text;
import java.sql.Blob;

import org.codehaus.jackson.annotate.JsonIgnore;
import org.hibernate.annotations.GenericGenerator;
import org.jeecgframework.poi.excel.annotation.Excel;

/**
 * @author onlineGenerator
 * @version V1.0
 * @Title: Entity
 * @Description: 服务单异常记录表
 * @date 2018-01-03 13:27:14
 */
@Entity
@Table(name = "CBS_SERVICE_ERROR_LOG", schema = "")
@SuppressWarnings("serial")
public class CbsServiceErrorLogEntity implements java.io.Serializable {
    /**
     * 主键
     */
    private String id;
    /**
     * 服务单ID
     */
    @Excel(name = "服务单ID")
    private CbsServiceEntity cbsServiceId;
    /**
     * 设备序列号
     */
    @Excel(name = "设备序列号")
    private String sn;
    /**
     * 处理描述
     */
    @Excel(name = "处理描述")
    private String description;
    /**
     * 是否已关闭
     */
    @Excel(name = "是否已关闭")
    private Integer isClose;
    /**
     * 异常原因
     */
    @Excel(name = "异常原因")
    private String abnormalCause;
    /**
     * 处理结果
     */
    @Excel(name = "处理结果")
    private String abnormalResult;

    /*是否需要系统修改*/
    @Excel(name="是否需要系统修改")
    private String needSystemRevise;
    /*管理员处理方法*/
    @Excel(name="管理员处理方法")
    private String adminDescription;
    /*管理员处理人*/
    @Excel(name="管理员处理人")
    private String adminUpdateBy;
    /*管理员处理时间*/
    @Excel(name="管理员处理时间")
    private Date adminUpdateDate;
    /*管理员处理结果*/
    @Excel(name="管理员处理结果")
    private String adminAbnormalResult;
    /**
     * 创建人名称
     */
    private String createName;
    /**
     * 创建人登录名称
     */
    private String createBy;
    /**
     * 创建日期
     */
    private Date createDate;
    /**
     * 更新人名称
     */
    private String updateName;
    /**
     * 更新人登录名称
     */
    private String updateBy;
    /**
     * 更新日期
     */
    private Date updateDate;

    @Column(name = "abnormal_result", nullable = true, length = 200)
    public String getAbnormalResult() {
        return abnormalResult;
    }

    public void setAbnormalResult(String abnormalResult) {
        this.abnormalResult = abnormalResult;
    }

    @Column(name = "abnormal_cause", nullable = true, length = 200)
    public String getAbnormalCause() {
        return abnormalCause;
    }

    public void setAbnormalCause(String abnormalCause) {
        this.abnormalCause = abnormalCause;
    }

    /**
     * 方法: 取得java.lang.String
     *
     * @return: java.lang.String  主键
     */
    @Id
    @GeneratedValue(generator = "paymentableGenerator")
    @GenericGenerator(name = "paymentableGenerator", strategy = "uuid")
    @Column(name = "ID", nullable = false, length = 36)
    public String getId() {
        return this.id;
    }

    /**
     * 方法: 设置java.lang.String
     *
     * @param: java.lang.String  主键
     */
    public void setId(String id) {
        this.id = id;
    }

    /**
     * 方法: 取得java.lang.String
     *
     * @return: java.lang.String  服务单ID
     */
    @JsonIgnore
    @ManyToOne(fetch = FetchType.EAGER)
    @JoinColumn(name = "CBS_SERVICE_ID", nullable = true)
    public CbsServiceEntity getCbsServiceId() {
        return this.cbsServiceId;
    }

    /**
     * 方法: 设置java.lang.String
     *
     * @param: java.lang.String  服务单ID
     */
    public void setCbsServiceId(CbsServiceEntity cbsServiceId) {
        this.cbsServiceId = cbsServiceId;
    }

    /**
     * 方法: 取得java.lang.String
     *
     * @return: java.lang.String  设备序列号
     */
    @Column(name = "SN", nullable = true, length = 50)
    public String getSn() {
        return this.sn;
    }

    /**
     * 方法: 设置java.lang.String
     *
     * @param: java.lang.String  设备序列号
     */
    public void setSn(String sn) {
        this.sn = sn;
    }

    /**
     * 方法: 取得java.lang.String
     *
     * @return: java.lang.String  处理描述
     */
    @Column(name = "DESCRIPTION", nullable = true, length = 200)
    public String getDescription() {
        return this.description;
    }

    /**
     * 方法: 设置java.lang.String
     *
     * @param: java.lang.String  处理描述
     */
    public void setDescription(String description) {
        this.description = description;
    }

    /**
     * 方法: 取得java.lang.Integer
     *
     * @return: java.lang.Integer  是否已关闭
     */
    @Column(name = "IS_CLOSE", nullable = true, length = 1)
    public Integer getIsClose() {
        return this.isClose;
    }

    /**
     * 方法: 设置java.lang.Integer
     *
     * @param: java.lang.Integer  是否已关闭
     */
    public void setIsClose(Integer isClose) {
        this.isClose = isClose;
    }

    /**
     * 方法: 取得java.lang.String
     *
     * @return: java.lang.String  创建人名称
     */
    @Column(name = "CREATE_NAME", nullable = true, length = 50)
    public String getCreateName() {
        return this.createName;
    }

    /**
     * 方法: 设置java.lang.String
     *
     * @param: java.lang.String  创建人名称
     */
    public void setCreateName(String createName) {
        this.createName = createName;
    }

    /**
     * 方法: 取得java.lang.String
     *
     * @return: java.lang.String  创建人登录名称
     */
    @Column(name = "CREATE_BY", nullable = true, length = 50)
    public String getCreateBy() {
        return this.createBy;
    }

    /**
     * 方法: 设置java.lang.String
     *
     * @param: java.lang.String  创建人登录名称
     */
    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    /**
     * 方法: 取得java.util.Date
     *
     * @return: java.util.Date  创建日期
     */
    @Column(name = "CREATE_DATE", nullable = true, length = 20)
    public Date getCreateDate() {
        return this.createDate;
    }

    /**
     * 方法: 设置java.util.Date
     *
     * @param: java.util.Date  创建日期
     */
    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    /**
     * 方法: 取得java.lang.String
     *
     * @return: java.lang.String  更新人名称
     */
    @Column(name = "UPDATE_NAME", nullable = true, length = 50)
    public String getUpdateName() {
        return this.updateName;
    }

    /**
     * 方法: 设置java.lang.String
     *
     * @param: java.lang.String  更新人名称
     */
    public void setUpdateName(String updateName) {
        this.updateName = updateName;
    }

    /**
     * 方法: 取得java.lang.String
     *
     * @return: java.lang.String  更新人登录名称
     */
    @Column(name = "UPDATE_BY", nullable = true, length = 50)
    public String getUpdateBy() {
        return this.updateBy;
    }

    /**
     * 方法: 设置java.lang.String
     *
     * @param: java.lang.String  更新人登录名称
     */
    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy;
    }

    /**
     * 方法: 取得java.util.Date
     *
     * @return: java.util.Date  更新日期
     */
    @Column(name = "UPDATE_DATE", nullable = true, length = 20)
    public Date getUpdateDate() {
        return this.updateDate;
    }

    /**
     * 方法: 设置java.util.Date
     *
     * @param: java.util.Date  更新日期
     */
    public void setUpdateDate(Date updateDate) {
        this.updateDate = updateDate;
    }
    @Column(name ="need_system_revise")
    public String getNeedSystemRevise() {
        return needSystemRevise;
    }

    public void setNeedSystemRevise(String needSystemRevise) {
        this.needSystemRevise = needSystemRevise;
    }

    @Column(name ="admin_description")
    public String getAdminDescription() {
        return adminDescription;
    }

    public void setAdminDescription(String adminDescription) {
        this.adminDescription = adminDescription;
    }

    @Column(name ="admin_updateBy")
    public String getAdminUpdateBy() {
        return adminUpdateBy;
    }

    public void setAdminUpdateBy(String adminUpdateBy) {
        this.adminUpdateBy = adminUpdateBy;
    }

    @Column(name ="admin_updateDate")
    public Date getAdminUpdateDate() {
        return adminUpdateDate;
    }

    public void setAdminUpdateDate(Date adminUpdateDate) {
        this.adminUpdateDate = adminUpdateDate;
    }

    @Column(name ="admin_abnormal_result")
    public String getAdminAbnormalResult() {
        return adminAbnormalResult;
    }

    public void setAdminAbnormalResult(String adminAbnormalResult) {
        this.adminAbnormalResult = adminAbnormalResult;
    }
}
